
#include "tstack.h"

#include <iostream>

template<class T>TStack<T>::TStack(){
	(*this).length=20;
	(*this).t=new T[length];
	(*this).ind=-1;
	std::cout<<"Sa apelat constructorul implicit";
}
template<class T>TStack<T>::~TStack(){

	delete t;
	std::cout<<"\nStiva distrusa";
}
template<class T>TStack<T>::TStack(int length){
	(*this).length=length;
	(*this).t=new T[length];
	(*this).ind=1;
}
template <class T>void TStack<T>::add(T element){
	if((*this).full()){
	
	}
	else{
	++ind;
	t[ind]=element;
	 }
	
}
template<class T>void TStack<T>::list(){
	if((*this).empty()){
	}
	else{
	std::cout<<"\nElementele stivei sunt";
	for(int i=0;i<=(*this).ind;i++)
		std::cout<<"\n"<<t[i];
	}
}
template<class T>bool TStack<T>::empty(){
	if((*this).ind==0)
		return true;
	return false;
}
template<class T>bool TStack<T>::full(){
	if((*this).ind==(*this).length)
	return true;
		
	return false;
}


